MPEG compression processing of picture data is one method for recording high quality pictures for a long period of time by which the picture data are recorded on a storage medium such as an optical disk or a magnetic tape. A detailed explanation of MPEG is given in "Saishin MPEG Kyokasho (The Newest MPEG Textbook)" supervised by Hiroshi Fujiwara, published Aug. 1, 1994 by ASCII Publishing Company in Japan.
First, picture signals are encoded to MPEG signals when a recording operation using MPEG is executed. Data of the MPEG signal are evenly divided every n-byte (n: a natural number), and m-byte (m: zero or a positive integer) accessory data is added to the data to constitute a single sector. Further, p (p: a natural number) of the sectors, and the first and second error correction codes comprise a correction block. Digital signal processing such as modulation processing is applied on such a correction block so as to record the data of the correction block in a storage medium such as an optical disk or a magnetic tape.
Reversing the recording operation enables reproduction of the picture signals recorded as above in the storage medium. The MPEG signal is reproduced by applying demodulation processing and error correction processing on the data read from the storage medium, and stored in a transfer rate control buffer. The transfer rate control buffer outputs specified data among the stored data to a MPEG decoder according to a data transfer rate of output to the MPEG decoder. The MPEG decoder decodes the MPEG signal to a picture signal, and outputs the picture signal decoded.
The error correction processing is applied on the reproduced data, which has been stored in an error correction process buffer, using the error correction code recorded with data in the storage medium. The data is handled in single sector units at a time while the error correction processing is executed with a unit of single correction block so as to increase a code length in light of increasing error correction performance and decreasing the degree of code redundancy.
The data of each correction block are arrayed two-dimensionally. The second error correction code C2 is obtained through a calculation carried out along the vertical direction of the two-dimensional data array. The second error correction code C2 is then added to the end of the column calculated. Next, the first error correction code C1 is obtained through a calculation in the horizontal direction, and added to the end of the row calculated. When reproducing the data, the error correction processing using the first error correction code C1 is conducted first, then the second error correction processing using the second error correction code C2 is conducted. A variable transfer rate is employed in data output from a digital signal process circuit to the MPEG decoder since the degree of compression in the MPEG compression processing is different for a complex picture and a simple picture, while the output transfer rate from the MPEG decoder is constant. It is technically easier to use a constant transfer rate for retrieving data from a storage medium such as an optical disk or a magnetic tape to the digital signal process circuit, and rather difficult to adjust the readout transfer rate in conformity with the data output transfer rate to the MPEG decoder.
Accordingly, the readout transfer rate from the optical disk is fixed to a constant value, and the transfer rate, which precedes output of the data processed by the error correction processing to the MPEG decoder, is adjusted using the transfer rate control buffer.
Realizing both the error correction process buffer and the transfer rate control buffer by a single common buffer, there are various advantages such as saving of buffer capacity and eliminating the need for data transfer from the error correction process buffer to the transfer rate control buffer.
A flag only indicating the existence of errors in the row is generated when the data retrieved from the storage medium contain more errors than the upper limit of the errors under which the errors are correctable using the first error correction code. Then the second error correction processing is executed using the flag and the second error correction code.
Error become uncorrectable when there are errors, which are beyond an error correction ability of the second error correction processing even after the second error correction processing, in the data processed by the first error correction processing. In this case the error correction processing is terminated with the errors still existing in the correction block composed of a plurality of the sectors. Conventionally, when the block having the uncorrectable error is detected, the error correction processing has to be repeated. The data in all the sectors of the correction block having the uncorrectable error has to be retrieved again from the storage medium, even if only some of the sectors in the correction block are required for reproducing a picture and some of the sectors required include no error, since the error correction processing is executed in units of the correction block in the prior art. This is called a retry operation.
Further, when the error flag is output during the data output processing and the retry operation is carried out in response to the error flag, the retry operation may lower a substantial transfer rate during the data output.